package me.hgj.mvvm.base.viewmodel

import androidx.lifecycle.ViewModel
import me.hgj.mvvm.callback.livedata.event.EventLiveData

/**
 * 作者　: hegaojian
 * 时间　: 2019/12/12
 * 描述　: ViewModel的基类 使用ViewModel类，放弃AndroidViewModel，原因：用处不大 完全有其他方式获取Application上下文
 */
open class BaseViewModel : ViewModel() {

    /**
     * 是否显示加载框
     */
    var showLoading = EventLiveData<Boolean>()

    /**
     * 加载框文本
     */
    var loadingText = EventLiveData<String>()

    /**
     * 页面状态码 @see [me.hgj.mvvm.network.PageStatusCode]
     */
    var pageStatusCode = EventLiveData<Int>()

    /**
     *当前分页页索引
     */
    var currentPageIndex = 1

    /**
     * 当前分页条目大小（默认是10条）
     */
    var pageSize = 10

    /**
     * 当前分页总页数
     */
    var pageTotal = 0

    /**
     * 恢复到上一次修改
     */
    fun revertCurrentPageIndex() {
        if (0 != currentPageIndex) {
            currentPageIndex--
        } else {
            currentPageIndex = 1
        }
    }
}